package com.hlj.ncp.warehouse.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.hlj.ncp.warehouse.entity.ColdStorageThreshold;

import java.util.List;

/**
 * 冷库温湿度阈值设置 服务层
 */
public interface IColdStorageThresholdService extends IService<ColdStorageThreshold> {
    
    /**
     * 查询冷库温湿度阈值设置列表
     * 
     * @param coldStorageThreshold 冷库温湿度阈值设置信息
     * @return 冷库温湿度阈值设置集合
     */
    List<ColdStorageThreshold> selectColdStorageThresholdList(ColdStorageThreshold coldStorageThreshold);
    
    /**
     * 查询冷库温湿度阈值设置详细信息
     * 
     * @param thresholdId 阈值设置ID
     * @return 冷库温湿度阈值设置信息
     */
    ColdStorageThreshold selectColdStorageThresholdById(Long thresholdId);
    
    /**
     * 根据仓库ID和区域查询阈值设置
     * 
     * @param warehouseId 仓库ID
     * @param storageArea 冷库区域
     * @return 阈值设置
     */
    ColdStorageThreshold selectThresholdByWarehouseAndArea(Long warehouseId, String storageArea);
    
    /**
     * 新增冷库温湿度阈值设置
     * 
     * @param coldStorageThreshold 冷库温湿度阈值设置信息
     * @return 结果
     */
    int insertColdStorageThreshold(ColdStorageThreshold coldStorageThreshold);
    
    /**
     * 修改冷库温湿度阈值设置
     * 
     * @param coldStorageThreshold 冷库温湿度阈值设置信息
     * @return 结果
     */
    int updateColdStorageThreshold(ColdStorageThreshold coldStorageThreshold);
    
    /**
     * 批量删除冷库温湿度阈值设置
     * 
     * @param thresholdIds 需要删除的阈值设置ID
     * @return 结果
     */
    int deleteColdStorageThresholdByIds(Long[] thresholdIds);
    
    /**
     * 删除冷库温湿度阈值设置信息
     * 
     * @param thresholdId 阈值设置ID
     * @return 结果
     */
    int deleteColdStorageThresholdById(Long thresholdId);
} 